package com.ia2014.tp.portal2.facades;

import java.util.Date;
import java.util.List;

import javax.ejb.Remote;

import com.ia2014.tp.portal2.integration.rest.entities.Ranking;
import com.ia2014.tp.portal2.vo.ArticuloVO;
import com.ia2014.tp.portal2.vo.ItemVentaVO;
import com.ia2014.tp.portal2.vo.UsuarioVO;
import com.ia2014.tp.portal2.vo.VentaVO;


@Remote
public interface FacadeIntegracion {

	public void agregarNuevoArticulo(String xmlArticulo);
	
	public List<ArticuloVO> getListaArticulos();
	
	public List<ArticuloVO> getListaArticulosByFechasDesdeHasta(Date fechaDesde, Date fechaHasta);
	
	public List<ArticuloVO> getListaArticulosByPrecioDesdeHasta(Double precioDesde, Double precioHasta);
	
	public List<ArticuloVO> getListaArticulosByCategoria(String categoria);
	
	public ArticuloVO getArticuloByCodigo(Integer codigo);
	
	public ArticuloVO getArticuloById(Integer idProducto);
	
	public List<ArticuloVO> getListaArticulosByNombre(String nombre);
		
	public void actualizarListaBestSellers(List<Ranking> listaRanking);
	
	public VentaVO getVentaByNro(Integer nroVenta);
	
	public boolean actualizarEstadoVenta(Integer nroVenta);
	
	public List<VentaVO> getListaVentasByUsuario(UsuarioVO usuarioVO);
	
	public UsuarioVO loadUsuario(UsuarioVO usuarioVO);
	
	public List<ItemVentaVO> getItemsByVenta(Integer nroVenta);
	
	public void actualizarConfiguracion();

}
